package com.bzkj.document.service.purchase;

import com.bzkj.common.core.domain.AjaxResult;
import com.bzkj.common.core.domain.model.LoginUser;
import com.bzkj.common.core.page.TableDataInfo;
import com.bzkj.common.domain.NccRequestDTO;
import com.bzkj.document.domain.purchaseinorder.dto.PurchaseInboundDTO;

import java.util.HashMap;
import java.util.List;

/**
 * @projectName: bzkj-wms
 * @package: com.bzkj.document.service.purchase.impl
 * @className: PurchaseInService
 * @description: 采购入库单服务接口
 * @author: C1309
 * @createDate: 2024年11月27日
 * @version: v1.0
 */
public interface PurchaseInService {

    /**
     * 获取采购入库单
     *
     * @param requestDTO 请求参数
     * @param pageNum    页码
     * @param pageSize   页面大小
     * @return 采购入库单
     */
    TableDataInfo getPurchaseInOrder(PurchaseInboundDTO requestDTO, int pageNum, int pageSize);

    /**
     * 删除采购入库单
     *
     * @param cgeneralhid  表头主键
     * @param loginUser 登录用户
     * @param reason    删除原因
     * @return 结果
     */
    AjaxResult deletePurchaseInboundOrder(String cgeneralhid, LoginUser loginUser, String reason);

    /**
     * 采购入库单签字
     *
     * @param cgeneralhid  表头主键
     * @param loginUser 登录用户
     * @return 结果
     */
    AjaxResult auditPurchaseInboundOrder(String cgeneralhid, LoginUser loginUser);
}
